var $http = require('../../utils/api/voucher.js');
// 引入公用的自定义函数
var $ = require('../../utils/js.js');
var img_gy_src = $.img_gy_src;

const app = getApp()
Page({
  // 页面的初始数据
  data: {
    img_gy_src: img_gy_src,

    // 用户数据
    user_data: "",

    // header中的数据
    header_data: {
      // 正在抢的人数
      now: "",
      // 已抢优惠券的数量
      my_coupou_num: 0,
      // 可为您节省的金额
      reduce_money: 0,
    },

    //是否悬停
    fixed: false,

    // 获取到的分类id
    fen_lei_id: 0,
    // section中nav的数据
    section_nav_data: [],

    // 获取到的列表数据
    list_data: [],
    // 是否该有更多数据
    more_data: true,
    // 页码
    page: 1,

    // 用户是否授权定位
    ding_wei: false,
    // 用户当前的经纬度
    lng: 0,
    lat: 0,

    // 是否刷新页面
    shua_xin: false,
  },
  // 生命周期函数--监听页面加载
  onLoad: function(options) {
    // 获取header中的数据
    this.get_header_data_fun();

    // 获取section_nav中的数据
    this.get_section_nav_data_fun();

    // 调用滚动悬停函数
    this.scroll_xuan_ting_fun();

    // 获取位置信息
    this.get_lng_lat();
  },
  // 生命周期函数--监听页面显示
  onShow: function() {
    this.setData({
      user_data: getApp().globalData.userinfo,
    })
    if (this.data.shua_xin) {
      // 获取用户的经纬度
      this.get_lng_lat();
    } else {
      this.setData({
        shua_xin: true
      })
    }
  },
  // 自定义函数   开始
  // 获取header中的数据
  get_header_data_fun() {
    $.ajax_get({
      url: "/Coupon/index",
      success: (res) => {
        if (res.data.code) {
          this.setData({
            header_data: res.data.data
          })
        }
      }
    })
  },
  // 点击暂未登录
  login_fun() {
    $.open("/pages/login/login");
  },
  // 滚动悬停函数
  scroll_xuan_ting_fun() {
    // 屏幕显示区域与标注线相交或相离时触发
    wx.createIntersectionObserver().relativeToViewport({
      top: 0
    }).observe("#biao_zhu", (res) => {
      // 打印相交或者相离时的数据
      // console.log(res);
      // 如果是相离，并且是从顶部相离，开启悬浮
      if (res.intersectionRect.height == 0 && res.boundingClientRect.bottom <= 0) {
        this.setData({
          fixed: true,
        })
      } else {
        this.setData({
          fixed: false,
        })
      }
    })
  },
  // 获取section_nav中的数据
  get_section_nav_data_fun() {
    $.ajax_get({
      url: "/common/category",
      data: {
        type: 'shop'
      },
      success: (res) => {
        var data = res.data.data;
        if (data) {
          data.unshift({
            id: "0",
            name: "全部"
          })
          this.setData({
            section_nav_data: data,
          })
        }
      }
    });
  },
  // 点击section中的nav时调用
  section_nav_fun(e) {
    var fen_lei_id = this.data.fen_lei_id;
    var new_fen_lei_id = e.currentTarget.dataset.fen_lei_id;
    if (fen_lei_id != new_fen_lei_id) {
      this.setData({
        fen_lei_id: new_fen_lei_id,
      })
      // 获取新的列表数据
      this.get_new_list_data();
    }
  },
  // 获取位置信息
  get_lng_lat() {
    if (this.data.ding_wei) {
      // 获取新的列表数据
      this.get_new_list_data();
    } else {
      $.ding_wei((data) => {
        this.setData({
          ding_wei: data.root
        })
        if (data.root) {
          this.setData({
            lng: data.jing_du,
            lat: data.wei_du,
          })
        }
        // 获取新的列表数据
        this.get_new_list_data();
      })
    }
  },
  // 获取新的列表数据
  get_new_list_data() {
    this.setData({
      page: 1,
      more_data: true,
      list_data: [],
    })
    // 获取列表数据
    this.get_list_data();
  },
  // 获取列表数据
  get_list_data() {
    var more_data = this.data.more_data;
    // 如果还有更多数据
    if (more_data) {
      var page = this.data.page - 0;
      var form_data = {
        // 分类id
        cat_id: this.data.fen_lei_id,
        pn: page,
        longitude: this.data.lng,
        latitude: this.data.lat,
      };
      $.ajax_get({
        url: "/coupon/list",
        data: form_data,
        success: (res) => {
          var data = res.data.data;
          console.log("列表数据", data);
          if (data) {
            if (data.length < 10) {
              this.setData({
                more_data: false,
              })
            } else {
              this.setData({
                page: page + 1,
              })
            }
            var list_data = this.data.list_data.concat(data);
            this.setData({
              list_data: list_data,
            })
          } else {
            this.setData({
              more_data: false,
            })
          }
        }
      })
    }
  },
  // 点击立即领取
  ling_qu_fun(e) {
    var index = e.currentTarget.dataset.index;
    var list_data = this.data.list_data;
    var coupon_id = list_data[index].id;
    $.deng_lu(() => {
      $.ajax_get({
        url: "/shops/add_coupon",
        data: {
          coupon_id: coupon_id,
        },
        success: (res) => {
          // 如果领取成功
          if (res.data.code == 1) {
            var send_num = list_data[index].send_num - 0;
            list_data[index].state = 1;
            list_data[index].send_num = send_num + 1;
            this.setData({
              list_data: list_data,
            })
            // 获取header中的数据
            this.get_header_data_fun();
          }
        },
      })
    });
  },
  // 点击了已领取，无用的函数
  no_fun() {

  },
  //点击跳转店铺详情
  shop_xq(e) {
    var shopid = e.currentTarget.dataset.shopid;
    $.open("/pages/shang_quan/dian_pu_xiang_qing/dian_pu_xiang_qing?id=" + shopid);
  },
  // 自定义函数   结束
  // 页面上拉触底事件的处理函数
  onReachBottom: function() {
    // 获取列表数据
    this.get_list_data();
  },
})